package unit6.part9;

import java.util.*;
import java.util.ArrayList;

public class GenericTest {
    public static void main(String[] args) {
        List l1 = new ArrayList(); // 没有泛型时
        l1.add(true);// 可以添加多种类型的数据
        l1.add("abc");
        l1.add(101);
        l1.add(new int[]{1, 2, 3, 4});
        System.out.println(l1);
        Object o = l1.get(2);
        if (o instanceof Integer) {// 但在读取时，需要做复杂的类型校验
            int i = (int) o;
            System.out.println(i + 10);
        }

        List<Integer> l2 = new ArrayList<>();// 由泛型时
        l2.add(1);// 仅能添加指定类型的数据
        l2.add(2);
        l2.add(3);
        System.out.println(l1);
        int i = l2.get(2);// 在读取时，能很明确的获得指定的类型
        System.out.println(i + 10);

    }
}
